Skip Headers

Oracle® XML Developer's Kit Programmer's Guide 10g Release 2 (10.2) Part Number B14252-01 |
Home | Book List | Contents | Index | Master Index | Feedback

Previous | Next
| View PDF

# What's New in the XDK?

What's New contains this topic:

- Features Introduced in Oracle XML Developer's Kit 10g Release 2 (10.2)

- Features Introduced in Oracle XML Developer's Kit 10g Release 1 (10.1)

## Features Introduced in Oracle XML Developer's Kit 10g Release 2 (10.2)

The new XDK features for the second release of Oracle Database 10g.

Globalization Development Kit (GDK) 2.0

Four `.jar` files are now required to provide Globalization support in XDK.

See Also: Chapter 2, "Getting Started with Java XDK Components"

Easy XML Application Development Using JAXB XCustomization

JAXB now supports customization. There are several new sample programs in the XDK `demo` directory that deal with customization.

See Also: "JAXB Customization" Table 6-2, "JAXB Class Generator Demos"

XPATH 2.0 and XQuery 1.0 Functions and Operators Support in Java

This feature conforms to the external W3C standard.

See Also: "Standards and Specifications"

SOAP APIs for C and C++

See Also: Chapter 18, "Using SOAP with the C XDK" Chapter 26, "Using SOAP with the C++ XDK"

## Features Introduced in Oracle XML Developer's Kit 10g Release 1 (10.1)

This section describes features introduced in the first release of Oracle Database 10g.

JAXB Class Generator

The JAXB compiler generates the interfaces and the implementation classes corresponding to the XML schema. The JAXB class generator, which is based on the Java Specification Request (JSR) recommendation for JAXB, is to be used for new applications. The Oracle class generator for Java is deprecated and replaced by the JSR-31 implementation of XML Data Binding (JAXB). The runtime will be supported, so that the Java classes generated in older releases will continue to work.

See Also: Chapter 6, "Using the JAXB Class Generator"

Unified API for C and C++

The functions in the unified APIs work in both XDK and XML DB and replace the C and C++ XDK functions of previous releases.

See Also: Chapter 15, "Using the XML Parser for C", Chapter 20, "Overview of the Unified C++ Interfaces", and related chapters

XDK C/C++ Components Change

Previously, the globalization support data environment variable setting was `ORA_NLS33`. It has now been changed to `ORA_NLS10`.

Pipeline Definition Language

The W3C Note for the Pipeline Definition Language is implemented in the XDK for Java.

See Also: Chapter 7, "Using the XML Pipeline Processor for Java"

XSLT Compiler and XSLT Virtual Machine (XVM)

For improved performance there are new interfaces for the XSLT processor for C and C++.

See Also: "XVM Processor".

XSQL Pages Publishing Framework Updates

The following list highlights the key new features added to the XSQL Pages publishing framework. You can now perform the following actions:

- Easily Work with Multi-Valued Parameters

- Bind Multi-Valued Parameters as Collections in SQL and PL/SQL

- Detect Action Handler Errors and React More Easily to Them

- Conditionally Execute Actions or Include Content

- Use JDBC Datasources from Your Servlet Container

- Provide Custom XSQL Page Request Logging

- Provide Custom XSQL Page Error Handling

- Override the Name of the XSQL Configuration File

The XSQL Servlet processor has the following new features in10g Release 1 (10.1):

- Support for Multi-Valued Parameters: This allows users to work with parameters whose values are arrays of strings. The most common scenario where multi-valued parameters occur is when a user submits an HTML form containing multiple occurrences of input controls that share the same name.

- Conditionally Execute Actions or Include Content with `xsql:if-param`: The new <`xsql:if-param>` action enables you to conditionally include the elements and actions that are nested inside it if some condition is true.

- New `Commit="No"` Flag on Actions That Performed an Implicit Commit: The `<xsql:delete-request, <xsql:insert-request>`, `<xsql:insert-request>`, and `<xsql:insert-parameter>` action elements each take a new optional commit attribute to control whether the action does an implicit commit or not.

- Optionally Set an Error Parameter on Any Built-in Action: It is often convenient to know whether an action encountered a non-fatal error during its execution.

- Use Your Servlet Container's DataSource Implementation: As an alternative to defining your named connections in the `XSQLConfig.xml` file, you can now se the data sources available through your servlet container's implementation of JDBC data sources.

- Provides Custom `XSQLErrorHandler` Implementation: A new interface is introduced in release 1.1. `oracle.xml.xsql.XSQLErrorHandler` allows developers to achieve a programmatic control of how errors are reported to customize the treatment of the errors.

- Provides `Custom XSQLLogger` Implementation: Two new interfaces are introduced in 10g Release 1 (10.1): `oracle.xml.xsql.XSQLLoggerFactory` and `oracle.xml.xsql.XSQLLogger` allow developers to log XSQL page requests.

- You can override the Default Name of the `XSQLConfig.xml` file: You can easily provide different configuration files for test and production environments. For example, 10g Release 1 (10.1) introduces two ways to override the file name.

  - By setting the Java System property `xsql.config`

  - By defining a servlet initialization parameter `xsql.config`

- Support for Apache FOP 0.20.3: If you need to render PDF output from XSQL pages, this release supports working with the 0.20.3 release candidate of Apache FOP.

- Set Preserve Whitespace Config Option: It is now possible to control whether or not the XSQL Page Processor uses the XML parser to parse XSQL page templates and XSLT stylesheets with whitespace-preserving mode.

See Also: Chapter 11, "Using the XSQL Pages Publishing Framework"

SOAP Documentation Improvements

This chapter includes new sections as well as an example of a SOAP project.

See Also: Chapter 13, "Using SOAP with the Java XDK"

New XML JavaBeans

The following new JavaBeans were added:

- `XSDValidator`, which encapsulates the `oracle.xml.parser.schema.XSDValidator` class and adds capabilities for validating a DOM tree.

- `XMLCompress`, which encapsulates XML compression functionality.

- `XMLDBAccess`, which is an extension of `DBAccess` JavaBean to support the `XMLType` column in which XML documents are stored in an Oracle database table.

See Also: Chapter 8, "Using XDK JavaBeans"

Changes in this Manual

The following PL/SQL chapters have been moved to the Oracle XML DB Developer's Guide:

- XML Parser for PL/SQL

- XSLT Processor for PL/SQL

- XML Schema Processor for PL/SQL

Upgrades to the XDK Components

Specifications of the levels of the components in this release are described in "XML Standards Supported by the XDK".

Java XDK Components Changes

- The Java XDK components in this release have several fixes for J2EE conformance and XML 1.0 Conformance Test Suite. Some of the changes resulted in change in behavior with respect to previous release. These changes include the following:

  - The default value of preserve whitespace `[XMLParser.setPreserveWhitespace()]` is now dependent on the presence of a DTD. If a DTD is present, the default is `false`, else it is `true`. Earlier the default was always `false`.

  - `getPrefix()`, `getNamespaceURI()`, and `getLocalName()` return `null` instead of '""' (empty string), when not present in the element or attribute, or if the node was created using DOM 1.0 methods.

- The `DBMS_XMLPARSER`, `DBMS_XMLDOM` and `DBMS_XSLPROCESSOR` packages replace the PL/SQL wrapper for parsing and transformation.

- JAXP 1.2 supports XML schema validation.

- `XMLSAXSerializer` provides support to handle the SAX output serialization.